from typing import Optional
from pydantic import BaseModel, Field


class NoticeSettingSchema(BaseModel):
    id: int = Field(..., description="主键")
    scene: int = Field(0, description="场景编号")
    name: str = Field(..., max_length=100, description="场景名称")
    remarks: str|None = Field(None, max_length=200, description="场景描述")
    recipient: int = Field(0, description="接收人员: [1=用户, 2=平台]")
    type: int = Field(0, description="通知类型: [1=业务, 2=验证]")
    system_notice: Optional[str] = Field(None, description="系统的通知设置")
    sms_notice: Optional[str] = Field(None, description="短信的通知设置")
    oa_notice: Optional[str] = Field(None, description="公众号通知设置")
    mnp_notice: Optional[str] = Field(None, description="小程序通知设置")
    is_delete: int = Field(0, description="是否删除: [0=否, 1=是]")